home *** CD-ROM | disk | FTP | other *** search
- // TestVCView.cpp : implementation of the CTestVCView class
- //
-
- #include "stdafx.h"
- #include "TestVC.h"
-
- #include "TestVCDoc.h"
- #include "TestVCView.h"
- #include "TestSheet.h"
-
-
- #ifdef _DEBUG
- #define new DEBUG_NEW
- #undef THIS_FILE
- static char THIS_FILE[] = __FILE__;
- #endif
-
- /////////////////////////////////////////////////////////////////////////////
- // CTestVCView
-
- IMPLEMENT_DYNCREATE(CTestVCView, CFormView)
-
- BEGIN_MESSAGE_MAP(CTestVCView, CFormView)
- //{{AFX_MSG_MAP(CTestVCView)
- ON_COMMAND(ID_PLAY, OnPlay)
- ON_COMMAND(ID_PAUSE, OnPause)
- ON_COMMAND(ID_STOP, OnStop)
- ON_COMMAND(ID_RECORD, OnRecord)
- ON_COMMAND(ID_CUT, OnCut)
- ON_COMMAND(ID_COPY, OnCopy)
- ON_COMMAND(ID_PASTE, OnPaste)
- ON_COMMAND(ID_UNDO, OnUndo)
- ON_COMMAND(ID_REDO, OnRedo)
- ON_COMMAND(ID_LEFT, OnLeft)
- ON_COMMAND(ID_RIGHT, OnRight)
- ON_COMMAND(ID_ZOOMIN, OnZoomin)
- ON_COMMAND(ID_ZOOMOUT, OnZoomout)
- ON_COMMAND(ID_FULL, OnFull)
- ON_COMMAND(ID_AMPLINC, OnAmplinc)
- ON_COMMAND(ID_AMPLDEC, OnAmpldec)
- ON_COMMAND(ID_NULL, OnNull)
- ON_COMMAND(ID_NEW, OnNew)
- ON_COMMAND(ID_OPEN, OnOpen)
- ON_COMMAND(ID_SAVE, OnSave)
- ON_COMMAND(ID_CLOSE, OnClose)
- ON_COMMAND(ID_SAVESELECT, OnSaveselect)
- ON_COMMAND(ID_FADEIN, OnFadein)
- ON_COMMAND(ID_FADEOUT, OnFadeout)
- ON_COMMAND(ID_INVERT, OnInvert)
- ON_COMMAND(ID_REVERSE, OnReverse)
- ON_COMMAND(ID_NORMALIZE, OnNormalize)
- ON_COMMAND(ID_MIX, OnMix)
- ON_COMMAND(ID_ECHO, OnEcho)
- ON_COMMAND(ID_STRETCH, OnStretch)
- ON_NOTIFY(NM_RELEASEDCAPTURE, IDC_SLIDER1, OnReleasedcaptureSlider1)
- ON_NOTIFY(NM_RELEASEDCAPTURE, IDC_SLIDER2, OnReleasedcaptureSlider2)
- ON_NOTIFY(NM_RELEASEDCAPTURE, IDC_SLIDER3, OnReleasedcaptureSlider3)
- ON_BN_CLICKED(IDC_CHECK1, OnCheck1)
- ON_COMMAND(ID_SETUP, OnSetup)
- ON_COMMAND(ID_CONVERT, OnConvert)
- ON_COMMAND(ID_INSSILENCE, OnInssilence)
- ON_COMMAND(ID_CONVERTS, OnConvertSample)
- ON_COMMAND(ID_COPY_CB, OnCopyClipBoard)
- ON_COMMAND(ID_PASTE_CB, OnPasteClipBoard)
- ON_COMMAND(ID_PASTE_FL, OnPasteFromFile)
- ON_COMMAND(ID_MIX_FL, OnMixFromFile)
- //}}AFX_MSG_MAP
- END_MESSAGE_MAP()
-
- /////////////////////////////////////////////////////////////////////////////
- // CTestVCView construction/destruction
-
- CTestVCView::CTestVCView()
- : CFormView(CTestVCView::IDD)
- {
- //{{AFX_DATA_INIT(CTestVCView)
- //}}AFX_DATA_INIT
- // TODO: add construction code here
-
- }
-
- CTestVCView::~CTestVCView()
- {
- }
-
- void CTestVCView::DoDataExchange(CDataExchange* pDX)
- {
- CFormView::DoDataExchange(pDX);
- //{{AFX_DATA_MAP(CTestVCView)
- DDX_Control(pDX, IDC_PROGRESS2, m_level);
- DDX_Control(pDX, IDC_PROGRESS1, m_block);
- DDX_Control(pDX, IDC_CHECK1, m_agc);
- DDX_Control(pDX, IDC_SLIDER3, m_balance);
- DDX_Control(pDX, IDC_SLIDER2, m_volume);
- DDX_Control(pDX, IDC_SLIDER1, m_gain);
- DDX_Control(pDX, IDC_NCTWAVPLAYERCTRL1, m_player);
- //}}AFX_DATA_MAP
- }
-
- BOOL CTestVCView::PreCreateWindow(CREATESTRUCT& cs)
- {
- // TODO: Modify the Window class or styles here by modifying
- // the CREATESTRUCT cs
-
- return CFormView::PreCreateWindow(cs);
- }
-
- void CTestVCView::OnInitialUpdate()
- {
- CFrameWnd* pf = STATIC_DOWNCAST(CFrameWnd,GetParentFrame());
- m_frame = DYNAMIC_DOWNCAST(CMainFrame,pf);
-
- CFormView::OnInitialUpdate();
-
- m_frame->RecalcLayout();
- ResizeParentToFit(FALSE);
-
- m_frame->m_wndStatusBar.SetPaneInfo(0,ID_INDICATOR_I1,SBPS_STRETCH,100);
- m_frame->m_wndStatusBar.SetPaneInfo(1,ID_INDICATOR_I2,SBPS_NORMAL,110);
- m_frame->m_wndStatusBar.SetPaneInfo(2,ID_INDICATOR_I3,SBPS_NORMAL,110);
- m_frame->m_wndStatusBar.SetPaneInfo(3,ID_INDICATOR_I4,SBPS_NORMAL,110);
- m_frame->m_wndStatusBar.SetPaneInfo(4,ID_INDICATOR_I5,SBPS_NORMAL,110);
-
- m_gain.SetRange(0,65535);
- m_gain.SetTicFreq(6000);
- m_volume.SetRange(0,65535);
- m_volume.SetTicFreq(6000);
- m_balance.SetRange(0,100);
- m_balance.SetTicFreq(25);
- m_balance.SetPos(50);
-
- m_block.SetRange32(0,100);
- m_level.SetRange32(0,32768);
-
- ClearParam();
-
- }
-
- /////////////////////////////////////////////////////////////////////////////
- // CTestVCView diagnostics
-
- #ifdef _DEBUG
- void CTestVCView::AssertValid() const
- {
- CFormView::AssertValid();
- }
-
- void CTestVCView::Dump(CDumpContext& dc) const
- {
- CFormView::Dump(dc);
- }
-
- CTestVCDoc* CTestVCView::GetDocument() // non-debug version is inline
- {
- ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CTestVCDoc)));
- return (CTestVCDoc*)m_pDocument;
- }
- #endif //_DEBUG
-
- /////////////////////////////////////////////////////////////////////////////
- // CTestVCView message handlers
-
- void CTestVCView::OnNew()
- {
- m_player.New(8000,1);
- fName="New WAV file";
- ShowParam();
- }
-
- void CTestVCView::OnOpen()
- {
- CString szFilter = "WAV Files (*.wav)|*.wav|MP3 Files (*.mp3)|*.mp3|";
- CFileDialog getFile(TRUE,NULL,NULL,
- OFN_HIDEREADONLY |
- OFN_OVERWRITEPROMPT |
- OFN_FILEMUSTEXIST, szFilter);
- if(getFile.DoModal()!=IDOK) return;
- UpdateWindow( );
- m_player.Open(getFile.GetPathName());
- fName=getFile.GetPathName();
- ShowParam();
- }
-
- void CTestVCView::OnClose()
- {
- m_player.Close();
- ClearParam();
- }
-
- void CTestVCView::OnSave()
- {
- CString szFilter = "WAV Files (*.wav)|*.wav|MP3 Files (*.mp3)|*.mp3|";
- CFileDialog getFile(FALSE,NULL,NULL,
- OFN_PATHMUSTEXIST|
- OFN_OVERWRITEPROMPT,szFilter);
- if(getFile.DoModal()!=IDOK) return;
- UpdateWindow( );
- m_player.Save(getFile.GetPathName());
- fName=getFile.GetPathName();
- ShowParam();
- }
- void CTestVCView::OnSaveselect()
- {
- CString szFilter = "WAV Files (*.wav)|*.wav|MP3 Files (*.mp3)|*.mp3|";
- CFileDialog getFile(FALSE,NULL,NULL,
- OFN_PATHMUSTEXIST|
- OFN_OVERWRITEPROMPT,szFilter);
- if(getFile.DoModal()!=IDOK) return;
- UpdateWindow( );
- m_player.SaveSelect(getFile.GetPathName());
- ShowParam();
- }
-
- void CTestVCView::OnConvert()
- {
- m_player.ConvertFromMenu();
- ShowParam();
- }
-
- void CTestVCView::OnConvertSample()
- {
- CString szFilter = "WAV Files (*.wav)|*.wav|";
- CFileDialog getFile(TRUE,NULL,NULL,
- OFN_PATHMUSTEXIST|
- OFN_OVERWRITEPROMPT,szFilter);
- if(getFile.DoModal()!=IDOK) return;
- UpdateWindow( );
- m_player.ConvertLikeSample(getFile.GetPathName());
- ShowParam();
- }
-
- void CTestVCView::OnPlay()
- {
- if (flgPause==0) m_player.Play();
- if (flgPause==1) m_player.ContinuePlay();
- ShowParam();
- }
-
- void CTestVCView::OnPause()
- {
- m_player.PausePlay();
- flgPause=1;
- ShowParam();
- }
-
- void CTestVCView::OnStop()
- {
- m_player.Stop();
- flgPause=0;
- ShowParam();
- }
-
- void CTestVCView::OnRecord()
- {
- m_player.Record();
- ShowParam();
- }
-
- void CTestVCView::OnCut()
- {
- m_player.Cut();
- ShowParam();
- }
-
- void CTestVCView::OnCopy()
- {
- m_player.Copy();
- ShowParam();
- }
-
- void CTestVCView::OnPaste()
- {
- m_player.Paste();
- ShowParam();
- }
-
- void CTestVCView::OnMix()
- {
- m_player.Mix(50,50);
- ShowParam();
- }
-
- void CTestVCView::OnCopyClipBoard()
- {
- m_player.CopyToClipboard();
- ShowParam();
- }
-
- void CTestVCView::OnPasteClipBoard()
- {
- m_player.PasteFromClipboard();
- ShowParam();
- }
-
- void CTestVCView::OnPasteFromFile()
- {
- CString szFilter = "WAV Files (*.wav)|*.wav|";
- CFileDialog getFile(TRUE,NULL,NULL,
- OFN_PATHMUSTEXIST|
- OFN_OVERWRITEPROMPT,szFilter);
- if(getFile.DoModal()!=IDOK) return;
- UpdateWindow( );
- m_player.PasteFromFile(getFile.GetPathName());
- ShowParam();
- }
-
- void CTestVCView::OnMixFromFile()
- {
- CString szFilter = "WAV Files (*.wav)|*.wav|";
- CFileDialog getFile(TRUE,NULL,NULL,
- OFN_PATHMUSTEXIST|
- OFN_OVERWRITEPROMPT,szFilter);
- if(getFile.DoModal()!=IDOK) return;
- UpdateWindow( );
- m_player.MixFromFile(getFile.GetPathName(),50,50);
- ShowParam();
- }
-
- void CTestVCView::OnUndo()
- {
- if (m_player.GetUndoEnable()==TRUE) m_player.Undo();
- ShowParam();
- }
-
- void CTestVCView::OnRedo()
- {
- if (m_player.GetRedoEnable()==TRUE) m_player.Redo();
- ShowParam();
- }
-
- void CTestVCView::OnLeft()
- {
- m_player.SetStereoChannel(0);
- ShowParam();
- }
-
- void CTestVCView::OnRight()
- {
- m_player.SetStereoChannel(1);
- ShowParam();
- }
-
- void CTestVCView::OnZoomin()
- {
- m_player.ZoomIn();
- ShowParam();
- }
-
- void CTestVCView::OnZoomout()
- {
- m_player.ZoomOut();
- ShowParam();
- }
-
- void CTestVCView::OnFull()
- {
- m_player.Full();
- ShowParam();
- }
-
- void CTestVCView::OnAmplinc()
- {
- m_player.Amplify(125);
- ShowParam();
- }
-
- void CTestVCView::OnAmpldec()
- {
- m_player.Amplify(80);
- ShowParam();
- }
-
- void CTestVCView::OnNull()
- {
- m_player.Silence();
- ShowParam();
- }
- void CTestVCView::OnInssilence()
- {
- m_player.InsertSilence(1000);
- ShowParam();
- }
-
- void CTestVCView::OnFadein()
- {
- m_player.Fade(0,100);
- ShowParam();
- }
-
- void CTestVCView::OnFadeout()
- {
- m_player.Fade(100,0);
- ShowParam();
- }
-
- void CTestVCView::OnInvert()
- {
- m_player.Invert();
- ShowParam();
- }
-
- void CTestVCView::OnReverse()
- {
- m_player.Reverse();
- ShowParam();
- }
-
- void CTestVCView::OnNormalize()
- {
- m_player.Normalize(70);
- ShowParam();
- }
-
- void CTestVCView::OnEcho()
- {
- m_player.Echo(200,50);
- ShowParam();
- }
-
- void CTestVCView::OnStretch()
- {
- m_player.Stretch(120);
- ShowParam();
- }
-
- void CTestVCView::OnCheck1()
- {
- if (m_agc.GetCheck()!=0) {
- m_player.SetAutoGainControl(TRUE);
- } else {
- m_player.SetAutoGainControl(FALSE);
- }
- }
-
- void CTestVCView::OnReleasedcaptureSlider1(NMHDR* pNMHDR, LRESULT* pResult)
- {
- m_player.SetGain(65535-m_gain.GetPos());
- *pResult = 0;
- }
-
- void CTestVCView::OnReleasedcaptureSlider2(NMHDR* pNMHDR, LRESULT* pResult)
- {
- m_player.SetVolume(65535-m_volume.GetPos());
- *pResult = 0;
- }
-
- void CTestVCView::OnReleasedcaptureSlider3(NMHDR* pNMHDR, LRESULT* pResult)
- {
- m_player.SetVolumeBalance(65535-m_balance.GetPos());
- *pResult = 0;
- }
-
-
- void CTestVCView::OnSetup()
- {
- CTestSheet ts(_T("Setup NCTWavPlayer ActiveX Control"));
- ts.m_player = &m_player;
- ts.DoModal();
- }
-
-
- BEGIN_EVENTSINK_MAP(CTestVCView, CFormView)
- //{{AFX_EVENTSINK_MAP(CTestVCView)
- ON_EVENT(CTestVCView, IDC_NCTWAVPLAYERCTRL1, 2 /* ChangePlayPos */, OnChangePlayPos, VTS_NONE)
- ON_EVENT(CTestVCView, IDC_NCTWAVPLAYERCTRL1, 3 /* ChangePos */, OnChangePos, VTS_NONE)
- ON_EVENT(CTestVCView, IDC_NCTWAVPLAYERCTRL1, 1 /* EndPlay */, OnEndPlay, VTS_NONE)
- ON_EVENT(CTestVCView, IDC_NCTWAVPLAYERCTRL1, 8 /* EndRecordBlock */, OnEndRecordBlock, VTS_NONE)
- ON_EVENT(CTestVCView, IDC_NCTWAVPLAYERCTRL1, 4 /* GainChange */, OnGainChange, VTS_NONE)
- ON_EVENT(CTestVCView, IDC_NCTWAVPLAYERCTRL1, 6 /* OperationBlock */, OnOperationBlock, VTS_I2)
- ON_EVENT(CTestVCView, IDC_NCTWAVPLAYERCTRL1, 5 /* VolumeChange */, OnVolumeChange, VTS_NONE)
- ON_EVENT(CTestVCView, IDC_NCTWAVPLAYERCTRL1, 7 /* LevelPlay */, OnLevelPlay, VTS_I4)
- //}}AFX_EVENTSINK_MAP
- END_EVENTSINK_MAP()
-
- void CTestVCView::OnGainChange()
- {
- m_gain.SetPos(65535-m_player.GetGain());
- }
-
- void CTestVCView::OnVolumeChange()
- {
- m_volume.SetPos(65535-m_player.GetVolume());
- }
-
- void CTestVCView::OnChangePlayPos()
- {
- ShowParam();
- }
-
- void CTestVCView::OnChangePos()
- {
- ShowParam();
- }
-
- void CTestVCView::OnEndPlay()
- {
- }
-
- void CTestVCView::OnEndRecordBlock()
- {
- }
-
- void CTestVCView::OnLevelPlay(long Level)
- {
- m_level.SetPos(Level);
- }
-
- void CTestVCView::OnOperationBlock(short Percent)
- {
- m_block.SetPos(Percent);
- }
-
- void CTestVCView::ClearParam()
- {
-
- m_block.SetPos(0);
- m_level.SetPos(0);
-
- m_gain.SetPos(65536-m_player.GetGain());
- m_volume.SetPos(65535-m_player.GetVolume());
- m_balance.SetPos(m_player.GetVolumeBalance());
- if (m_player.GetAutoGainControl()==TRUE) {
- m_agc.SetCheck(1);
- } else {
- m_agc.SetCheck(0);
- }
-
- flgPause=0;
- m_frame->m_wndStatusBar.SetPaneText(0," ");
- m_frame->m_wndStatusBar.SetPaneText(1," ");
- m_frame->m_wndStatusBar.SetPaneText(2," ");
- m_frame->m_wndStatusBar.SetPaneText(3," ");
- m_frame->m_wndStatusBar.SetPaneText(4," ");
-
- AfxGetMainWnd()->SetWindowText("NCTWavPlayer ActiveX Control - Test MS VC++ 6.0");
- }
-
- void CTestVCView::ShowParam()
- {
- CString str;
-
- m_block.SetPos(0);
-
- m_gain.SetPos(65536-m_player.GetGain());
- m_volume.SetPos(65535-m_player.GetVolume());
- m_balance.SetPos(m_player.GetVolumeBalance());
-
- m_frame->m_wndStatusBar.SetPaneText(0,m_player.GetFormatString());
-
- str.Format("nSamples: %d",m_player.GetNSamples());
- m_frame->m_wndStatusBar.SetPaneText(1,str);
-
- str.Format("StartPos: %d",m_player.GetStartPos());
- m_frame->m_wndStatusBar.SetPaneText(2,str);
-
- str.Format("EndPos: %d",m_player.GetEndPos());
- m_frame->m_wndStatusBar.SetPaneText(3,str);
-
- str.Format("Time: %.2f sec",m_player.SamplToSec(m_player.GetNSamples()));
- m_frame->m_wndStatusBar.SetPaneText(4,str);
-
- m_frame->UpdateWindow();
-
- str="NCTWavPlayer ActiveX Control - Test MS VC++ 6.0 - "+fName;
- AfxGetMainWnd()->SetWindowText(str);
- }
-
-
-
-